1. Field of The Invention
This invention relates to a method that provides for an effective way of creating and maintaining test scripts, and particularly to abstracting and mapping software objects from an application under test (AUT), creating verification points (VP), and scripting actions. In addition, verification points can be extracted from an application under test. The baseline text (translations) can be displayed for review. The tester can verify baseline translations, as will be seen by an end user, and or identify any missing baseline text (translations).
2. Description of Background
Before our invention a solution for automating internationalization software testing was through manually scripting each language. This process begins with the tester starting with one language and creating the script or scripts containing actions and verification points (VP) specific to that language. The script creation begins with manually navigating the application under test (AUT) to the desired state. During the navigation process, the automation tool records the actions performed with respect to the current language under test. Once the AUT is at the desired state, the tester would use the automation tool to create a VP. The tool would present a series of dialogs asking for the user to select one or more objects followed by which object properties to verify. This process of adding actions and VPs is repeated until the script meets all the requirements of the test. Once the first language is done, the same process is applied to all subsequent languages. The result is a separate script (with actions and associated VPs) for each language.
A major shortcoming of this approach is that it is not scalable. As the number of supported languages increase, the work involved grows dramatically. Since the actions are scripted per language, each language requires manual effort to create and maintain. The amount of work can be significant when testing many languages. Likewise, the problem is also present with respect to verification points. The effort involved when testing many languages is considerable when taking into account that each language requires manual creation of numerous verification points. In addition, the maintenance effort of the scripts can be burdensome. Especially when more languages are supported, and or when new features to test are added. For example, the addition of a new AUT feature would require the manual creation of the necessary actions and VPs for that feature across all of the supported languages. Likewise, in the case where the AUT supports a new language, an entirely new script will need to be manually created for the new language. The existing manual process does not scale well to either of these maintenance items. Another problem is that it can lead to inconsistencies. In particular, the consistency of VPs across languages is compromised due to the high probability of human error involved in the manual creation process.